Skip to content

Decode round from fitness and use it in getround for proposals#13

Merged
e-asphyx merged 1 commit intoecadlabs:v2from
vch9:fix-getround-error
Feb 23, 2026
Merged

Decode round from fitness and use it in getround for proposals#13
e-asphyx merged 1 commit intoecadlabs:v2from
vch9:fix-getround-error

Conversation

@vch9
Copy link
Copy Markdown
Contributor

@vch9 vch9 commented Feb 23, 2026

Hi 👋

I work at Nomadic Labs on Octez.

Some bakers recently missed slots, and after investigation we isolated the issue in Signatory: it was unable to sign reproposals (same payload at a higher round). This PR addresses that issue.

To test this patch I have setup a sandbox network with a signatory using this patch. I have tried to repropose with the same payload using

./octez-client --endpoint http://127.0.0.1:18731/ -d /tmp/tezos-client-signatory repropose for baker1 --minimal-timestamp --force-reproposal

(/tmp/tezos-client-signatory is a client that uses remote keys from a signatory instance)

Please let me know if you’d like any additional context or the full testing scenario.

@jevonearth
Copy link
Copy Markdown
Contributor

Thank you for the contribution Valentin! We will review/test. Much appreciated.

@e-asphyx e-asphyx merged commit 7ab6781 into ecadlabs:v2 Feb 23, 2026
1 check passed
jevonearth added a commit that referenced this pull request Mar 3, 2026
- Replace fmt.Println error swallowing with panic in
  BlockSignRequest.GetRound(), matching existing convention for
  impossible-state failures in consensus sign request methods.
  The previous behavior silently returned round 0 on error.

- Tighten fitness length check from 4 to 33 bytes (minimum valid
  Tenderbake fitness without locked round).

- Add tests with two real mainnet fitness vectors (proto_016 round 0,
  proto_024 round 1 reproposal) plus synthetic coverage for both
  fitness shapes and error rejection.

Followup to #13.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants